package com.service.impl;

import com.constant.Constant;
import com.entity.CourseType;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.mapper.CourseTypeMapper;
import com.service.CourseTypeService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * Created with IntelliJ IDEA.
 *
 * @Author: 陈忠杰
 * @Date: 2021/07/05/11:44
 * @Description:
 */
@Service
public class CourseTypeServiceImpl implements CourseTypeService {

    @Autowired
    CourseTypeMapper courseTypeMapper;

    @Override
    public int addCourseType(CourseType courseType) {

        String type_name = courseType.getType_name();
        int i1 = courseTypeMapper.selIsExistByTypeName(type_name);
        if (i1==0) {
            int i = courseTypeMapper.insCourseType(courseType);
            return i;
        }
        return 0;
    }

    @Override
    public PageInfo<CourseType> getCourseTypeByParent_idAndPageNo(int parent_id,int pageNo) {
        PageHelper.startPage(pageNo, Constant.PAGE_SIZE_COURSE);
        List<CourseType> courseTypes = courseTypeMapper.selCourseTypeByParent_id(parent_id);
        PageInfo<CourseType> courseTypePageInfo = new PageInfo<>(courseTypes);
        return courseTypePageInfo;
    }

    @Override
    public CourseType getCourseTypeById(int id) {
        CourseType courseTypes = courseTypeMapper.selCourseTypeById(id);
        return courseTypes;
    }

    @Override
    public List<CourseType> getCourseTypeByParent_id(int parent_id) {
        List<CourseType> courseTypes = courseTypeMapper.selCourseTypeByParent_id(parent_id);
        return courseTypes;

    }

    @Override
    public int changeStatus(int id, int status) {
        int i = courseTypeMapper.updStatus(id, status);

        return i;
    }

    @Override
    public int changeCourseTypeByInfo(CourseType courseType) {
        Integer id = courseType.getId();
        String type_name = courseType.getType_name();
        int i1 = courseTypeMapper.selIsExistByTypeNameAndId(type_name, id);
        if (i1==0) {
            int i = courseTypeMapper.updCourseTypeByInfo(courseType);
            return i;
        }
        return 0;
    }

    @Override
    public List<CourseType> getAllCourseType() {
        List<CourseType> courseTypes = courseTypeMapper.selAllCourseType();
        return courseTypes;
    }




}
